#include "myshell.h"

#define SIZE 1024

int main()
{
    char commandstr[SIZE];

    while(true)
    {
        // 0、初始化全局变量
        InitGlobal();

        // 1、打印命令行提示符
        PrintCommandPrompt();

        // 2、读取用户输入的命令
        //如果用户没有输入，直接回车
        //会返回false,此时直接continue
        if(!GetCommandString(commandstr, SIZE))
            continue;

        // 3、解析命令行字符串
        ParseCommandString(commandstr);

        // 4、检查命令，若为内建命令由父进程运行
        if(BuildInCommandExec())
            continue;
        
        // 5、执行命令
        ForkAndExec();
    }
    return 0;
}
